package com.dbdata.move.model;

// Generated cafuc by Hibernate Tools 4

import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;

/**
 * MainPointModule generated by hbm2java
 */
@Entity
@Table(name = "main_point_module")
public class MainPointModule implements java.io.Serializable {

	private Long id;
	private MainPoint mainPoint;
	private AirplaneSeries airplaneSeries;
	private String moduleName;
	private Integer partOrder;
	private Set<UserBaseInfoMainPoint> userBaseInfoMainPoints = new HashSet<UserBaseInfoMainPoint>(
			0);
	private Set<StudentResit> studentResits = new HashSet<StudentResit>(0);
	private Set<Topic> topics = new HashSet<Topic>(0);
	private Set<StudentRecommend> studentRecommends = new HashSet<StudentRecommend>(
			0);
	private Set<WorkOrder> workOrders = new HashSet<WorkOrder>(0);

	public MainPointModule() {
	}

	public MainPointModule(MainPoint mainPoint, AirplaneSeries airplaneSeries,
			String moduleName, Integer partOrder,
			Set<UserBaseInfoMainPoint> userBaseInfoMainPoints,
			Set<StudentResit> studentResits, Set<Topic> topics,
			Set<StudentRecommend> studentRecommends, Set<WorkOrder> workOrders) {
		this.mainPoint = mainPoint;
		this.airplaneSeries = airplaneSeries;
		this.moduleName = moduleName;
		this.partOrder = partOrder;
		this.userBaseInfoMainPoints = userBaseInfoMainPoints;
		this.studentResits = studentResits;
		this.topics = topics;
		this.studentRecommends = studentRecommends;
		this.workOrders = workOrders;
	}

	@Id
	@GeneratedValue(strategy = IDENTITY)
	@Column(name = "ID", unique = true, nullable = false)
	public Long getId() {
		return this.id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "MAIN_POINT_ID")
	public MainPoint getMainPoint() {
		return this.mainPoint;
	}

	public void setMainPoint(MainPoint mainPoint) {
		this.mainPoint = mainPoint;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "MAIN_POINT_SERIES")
	public AirplaneSeries getAirplaneSeries() {
		return this.airplaneSeries;
	}

	public void setAirplaneSeries(AirplaneSeries airplaneSeries) {
		this.airplaneSeries = airplaneSeries;
	}

	@Column(name = "MODULE_NAME", length = 120)
	public String getModuleName() {
		return this.moduleName;
	}

	public void setModuleName(String moduleName) {
		this.moduleName = moduleName;
	}

	@Column(name = "PART_ORDER")
	public Integer getPartOrder() {
		return this.partOrder;
	}

	public void setPartOrder(Integer partOrder) {
		this.partOrder = partOrder;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "mainPointModule")
	public Set<UserBaseInfoMainPoint> getUserBaseInfoMainPoints() {
		return this.userBaseInfoMainPoints;
	}

	public void setUserBaseInfoMainPoints(
			Set<UserBaseInfoMainPoint> userBaseInfoMainPoints) {
		this.userBaseInfoMainPoints = userBaseInfoMainPoints;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "mainPointModule")
	public Set<StudentResit> getStudentResits() {
		return this.studentResits;
	}

	public void setStudentResits(Set<StudentResit> studentResits) {
		this.studentResits = studentResits;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "mainPointModule")
	public Set<Topic> getTopics() {
		return this.topics;
	}

	public void setTopics(Set<Topic> topics) {
		this.topics = topics;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "mainPointModule")
	public Set<StudentRecommend> getStudentRecommends() {
		return this.studentRecommends;
	}

	public void setStudentRecommends(Set<StudentRecommend> studentRecommends) {
		this.studentRecommends = studentRecommends;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "mainPointModule")
	public Set<WorkOrder> getWorkOrders() {
		return this.workOrders;
	}

	public void setWorkOrders(Set<WorkOrder> workOrders) {
		this.workOrders = workOrders;
	}

}
